'\" te
.\" Copyright (c) 2003, Sun Microsystems, Inc. All Rights Reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH SERVICE_PROVIDER.CONF 5 "Jun 18, 2004"
.SH NAME
service_provider.conf \- service provider configuration file
.SH SYNOPSIS
.LP
.nf
\fBservice_provider.conf\fR
.fi

.SH DESCRIPTION
.LP
\fBservice_provider.conf\fR contains information about the device type that the
service provider supports. This information includes the pathname of the
service provider library, the library version and other library characteristics
that are required by the system administrative command, \fBdatadm\fR(8).
\fBdatadm\fR(8) puts this information in the DAT static register file,
\fBdat.conf\fR(5).
.sp
.LP
The \fBdatadm\fR program enumerates each device entry into a list of interface
adapters, that is, interfaces to external network that are available to uDAPL
consumers. This new list of interface adapters is appended to other service
providers' information in the DAT static registry, \fBdat.conf\fR. You can do
this if you invoke the \fBdatadm\fR program with the \fB-a\fR option and the
pathname of the \fBservice_provider.conf\fR file.
.sp
.LP
Each entry in the service_provider.conf is a single line of 7 fields.
.sp
.LP
The following shows the order of the fields in a \fBservice_provider.conf\fR
entry:
.sp
.in +2
.nf
"\fIdriver_name\fR" "\fIAPI_version\fR" "\fIthreadsafe_library\fR | \e
      \fInonthreadsafe_library\fR"\e
"\fIdefault_version\fR | \fInondefault_version\fR" \e
     "\fIservice_provider_library_pathname\fR"\e
"\fIservice_provider_version\fR" "\fIservice_provider_instance_data\fR"\e
.fi
.in -2

.sp
.LP
The fields are defined as follows:
.sp
.ne 2
.na
\fB\fIdriver_name\fR\fR
.ad
.sp .6
.RS 4n
Specifies a driver name in the format of \fBdriver_name\fR=\fIvalue pair\fR,
for example, \fBdriver_name=tavor\fR.
.RE

.sp
.ne 2
.na
\fB\fIAPI_version\fR\fR
.ad
.sp .6
.RS 4n
Specifies the API version of the service provider library: For example,
\fB"u"major.minor\fR is \fBu1.2\fR.
.RE

.sp
.ne 2
.na
\fB\fIthreadsafe_library\fR | \fInonthreadsafe_library\fR\fR
.ad
.sp .6
.RS 4n
Specifies a threadsafe or non-threadsafe library.
.RE

.sp
.ne 2
.na
\fB\fIdefault_version\fR | \fInondefault_version\fR\fR
.ad
.sp .6
.RS 4n
Specifies a default or non-default version of a library. A service provider can
offer several versions of the library. If so, one version is designated as
\fBdefault\fR with the rest as \fBnondefault\fR.
.RE

.sp
.ne 2
.na
\fB\fIservice_provider_library_pathname\fR\fR
.ad
.sp .6
.RS 4n
Specifies the pathname of the library image.
.RE

.sp
.ne 2
.na
\fB\fIservice_provider_version\fR\fR
.ad
.sp .6
.RS 4n
Specifies the version of the service provider. By convention, specify the
company stock symbol as the service provider, followed by major and minor
version numbers, for example, \fBSUNW1.0\fR.
.RE

.sp
.ne 2
.na
\fB\fIservice_provider_instance_data\fR\fR
.ad
.sp .6
.RS 4n
Specifies the service provider instance data.
.RE

.SH EXAMPLES
.LP
\fBExample 1 \fRUsing a Logical Device Name
.sp
.LP
The following example \fBservice_provider.conf\fR entry uses a logical device
name:

.sp
.in +2
.nf
#
# Sample service_provider.conf entry showing an uDAPL 1.2 service
# provider, udapl_tavor.so.1 supporting a device with a driver named
# tavor
driver_name=tavor u1.2 nonthreadsafe default udapl_tavor.so.1 \e
    SUNW.1.0 ""
.fi
.in -2

.LP
\fBExample 2 \fRUsing a Physical Device Name
.sp
.LP
The following example \fBservice_provider.conf\fR uses a physical device name:

.sp
.in +2
.nf
#
# Sample service_provider.conf entry showing an uDAPL 1.2
# service provider, udapl_tavor.so.1 supporting a device named
# pci15b3,5a44 that can be located under /devices
#
pci15b3,5a44 u1.2 nonthreadsafe default \e
    /usr/lib/tavor/udapl_tavor.so.1 SUNWudaplt1.0 ""
.fi
.in -2

.SH ATTRIBUTES
.LP
See \fBattributes\fR(7) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
Stability	Evolving
.TE

.SH SEE ALSO
.LP
.BR dat.conf (5),
.BR attributes (7),
.BR datadm (8)
